package com.inspur.dgov.policy.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 政策信息表
 *
 * @author chiyupei
 * @version 1.0
 * @since 1.0
 */
@Data
@TableName("info_policy")
@ApiModel(value="InfoPolicy对象", description="政策信息表")
public class InfoPolicy implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键ID")
    @TableId("ID")
    private String id;

    @ApiModelProperty(value = "标题")
    @TableField("BASIC_TITLE")
    private String basicTitle;

    @ApiModelProperty(value = "发文编号")
    @TableField("BASIC_ISSUED_NUMBER")
    private String basicIssuedNumber;

    @ApiModelProperty(value = "所属区划名称")
    @TableField("REGION_NAME")
    private String regionName;

    @ApiModelProperty(value = "所属区划编码")
    @TableField("REGION_CODE")
    private String regionCode;

    @ApiModelProperty(value = "所属部门名称")
    @TableField("ORG_NAME")
    private String orgName;

    @ApiModelProperty(value = "所属部门编码")
    @TableField("ORG_CODE")
    private String orgCode;

    @ApiModelProperty(value = "发文部门")
    @TableField("BASIC_DEPARTMENT_NAME")
    private String basicDepartmentName;

    @ApiModelProperty(value = "信息来源")
    @TableField("BASIC_SOURCE_URL")
    private String basicSourceUrl;

    @ApiModelProperty(value = "发文日期")
    @TableField("BASIC_RELEASE_DATE")
    private String basicReleaseDate;

    @ApiModelProperty(value = "主题词")
    @TableField("BASIC_SUBJECT_WORDS")
    private String basicSubjectWords;

    @ApiModelProperty(value = "主题分类")
    @TableField("BASIC_SUBJECT_CLASSIFICATION")
    private String basicSubjectClassification;

    @ApiModelProperty(value = "政策文本")
    @TableField("BASIC_CONTENT_ID")
    private String basicContentId;

    @ApiModelProperty(value = "附件链接")
    @TableField("BASIC_ATTACHEMENT_URL")
    private String basicAttachementUrl;

    @ApiModelProperty(value = "采集方式")
    @TableField("COLLECT_STYLE")
    private String collectStyle;

    @ApiModelProperty(value = "采集者ID")
    @TableField("COLLECTER_ID")
    private String collecterId;

    @ApiModelProperty(value = "采集者姓名")
    @TableField("COLLECTER_NAME")
    private String collecterName;

    @ApiModelProperty(value = "采集租户")
    @TableField("COLLECT_TENANT")
    private String collectTenant;

    @ApiModelProperty(value = "收集时间")
    @TableField("COLLECT_DATE")
    private String collectDate;

    @ApiModelProperty(value = "状态")
    @TableField("BASIC_STATE")
    private String basicState;

    @ApiModelProperty(value = "系统状态")
    @TableField("BASIC_STATUS")
    private String basicStatus;

    @ApiModelProperty(value = "主题分类修正")
    @TableField("EXTEND_SUBJECT_UPDATE")
    private String extendSubjectUpdate;

    @ApiModelProperty(value = "文件类型")
    @TableField("EXTEND_DOC_TYPE")
    private String extendDocType;

    @ApiModelProperty(value = "关键词")
    @TableField("EXTEND_KEYWORDS")
    private String extendKeywords;

    @ApiModelProperty(value = "生效日期")
    @TableField("EXTEND_USE_DATE")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private LocalDate extendUseDate;

    @ApiModelProperty(value = "摘要")
    @TableField("EXTEND_SUMMARY")
    private String extendSummary;

    @ApiModelProperty(value = "面向对象")
    @TableField("EXTEND_CORPORATION")
    private String extendCorporation;

    @ApiModelProperty(value = "属性1")
    @TableField("EXTEND_REDUNDANT_FIELD_1")
    private String extendRedundantField1;

    @ApiModelProperty(value = "属性2")
    @TableField("EXTEND_REDUNDANT_FIELD_2")
    private String extendRedundantField2;

    @ApiModelProperty(value = "属性3")
    @TableField("EXTEND_REDUNDANT_FIELD_3")
    private String extendRedundantField3;

    @ApiModelProperty(value = "属性4")
    @TableField("EXTEND_REDUNDANT_FIELD_4")
    private String extendRedundantField4;

    @ApiModelProperty(value = "属性5")
    @TableField("EXTEND_REDUNDANT_FIELD_5")
    private String extendRedundantField5;

    @ApiModelProperty(value = "最后修改时间")
    @TableField("MODIFY_TIME")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private LocalDateTime modifyTime;

    @ApiModelProperty(value = "关联政策ID(以逗号分隔)")
    @TableField("PARENT_ID")
    private String parentId;

}
